package com.gtja.beoms.dao;

import com.gtja.beoms.dto.QwContactMappingVo;
import com.gtja.beoms.pojo.QwContactMapping;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/**
 * @ClassName : QwContactMapping
 * @Author : LI
 */
@Mapper
public interface QwContactMappingDao {

    /**
     * 查询聊天关系映射
     *
     * @param id 聊天关系映射ID
     * @return 聊天关系映射
     */
    QwContactMapping selectQwContactMappingById(Long id);

    /**
     * 查询聊天关系映射列表
     *
     * @param qwContactMapping 聊天关系映射
     * @return 聊天关系映射集合
     */
    List<QwContactMapping> selectQwContactMappingList(QwContactMapping qwContactMapping);

    /**
     * 新增聊天关系映射
     *
     * @param qwContactMapping 聊天关系映射
     * @return 结果
     */
    int insertQwContactMapping(QwContactMapping qwContactMapping);


    /**
     * 查询员工的聊天绑定关系
     *
     * @param corpId 企业微信ID
     * @param fromId 员工ID
     * @return 聊天关系映射
     */
    List<QwContactMappingVo> selectQwContactMappingByUser(String corpId, String fromId);

    /**
     * 查询有聊天关系的员工信息
     *
     * @param corpId 企业微信ID
     * @param type 身份信息
     * @return 聊天关系映射
     */
    List<QwContactMappingVo> selectQwContactMappingUserInfo(String corpId, String type);

    /**
     * 查询群聊的聊天绑定关系
     *
     * @param corpId 企业微信ID
     * @param fromId 员工ID
     * @return 聊天关系映射
     */
    List<QwContactMappingVo> selectQwContactMappingByGroup(String corpId, String fromId);
}
